只读加锁。lock_read
方法表示仅锁定读。
bool $lock->lock_read();
- 在持有读锁的过程中,其他进程依然可以获得读锁,可以继续发生读操作
- 但不能
$lock->lock()
或$lock->trylock()
,这两个方法是获取独占锁,在独占锁加锁时,其他进程无法再进行任何加锁操作,包括读锁 - 当另外一个进程获得了独占锁(调用
$lock->lock
/$lock->trylock
)时,$lock->lock_read()
会发生阻塞,直到持有独占锁的进程释放锁
只有
SWOOLE_RWLOCK
和SWOOLE_FILELOCK
类型的锁支持只读加锁